 /***************************************************************************
 *   Copyright (C) 2010 by ZhangShine , All Rights Reserved                                  
 *   zhangshine0125@gmail.com                                              
 *                                                                         
 *   This program is free software; you can redistribute it and/or modify  
 *   it under the terms of the GNU General Public License as published by  
 *   the Free Software Foundation; either version 2 of the License, or     
 *   (at your option) any later version.                                   
 *                                                                         
 *   This program is distributed in the hope that it will be useful,       
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         
 *   GNU General Public License for more details.                          
 *                                                                         
 *   You should have received a copy of the GNU General Public License     
 *   along with this program; if not, write to the                         
 *   Free Software Foundation, Inc.,                                       
 *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             
 ***************************************************************************/

#ifndef SHOWPICTURE_H
#define SHOWPICTURE_H

#include <QTimer>
#include <QtGui>
#include "http.h"

/*! \class ShowPicture
 * \brief 显示图片
 *
 *
 */
class ShowPicture : public QDialog
{
    Q_OBJECT
public:
    explicit ShowPicture(QString bigUrl,QString midUrl, QWidget *parent = 0);
    ~ShowPicture();

signals:

public slots:
    void downloadFile();
    void updateProgressBar(qint64 bytesReceived, qint64 bytesTotal);
    void saveImage();
    void resizeDialog(int imageWidth, int imageHeight);
    void showBigPicture();
    void showAfterDownload();
    void closeEvent(QCloseEvent *event);
    void reject();
private:
    QToolBar *toolBar;
    QAction *saveFile;
    QAction *bigPicture;
    QGraphicsView *view;
    QGraphicsScene *scene;
    QVBoxLayout *layout;
    QLabel *label;
    QLabel *showGif;
    QMovie *movie;
    QBuffer *gifImageFile;
    QTimer *timer;
    QProgressBar *progressBar;
    QString bigUrl;
    QString midUrl;
    Http *http;
    QByteArray imageByteArray;
    bool isGif;
};

#endif // SHOWPICTURE_H
